{\rtf0\ansi{\fonttbl\f3\fmodern Ohlfs;\f4\fmodern Courier;\f2\fswiss Helvetica;}
\margl40
\margr40
{\colortbl;\red17\green81\blue31;\red0\green0\blue0;\red0\green0\blue136;\red255\green0\blue3;\red85\green85\blue85;\red214\green0\blue3;}
\pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\f3\b0\i0\ulnone\fs20\gray221\fc1\cf1 /* RTFExampleClass.m				 \
 *\
 * This class servers as an example for how to layout Rich Sources\
 * so that they are still parsable with the ClassEditor.\
 *\
 * For interface-info see the header file. The comments in this file mostly\
 * cover only the real implementation details.\

\gray0\fc0\cf0  *\
 * Written by: 		Thomas Engel\
 * Created:    		
\fc2\cf2 20.01.1995
\fc0\cf0  (Copyleft)\
 * Last modified: 	
\fc2\cf2 20.01.1995
\fc0\cf0 \
 */\
\

\f4\b\fs24\fc2\cf2 #define
\f3\b0\fs20\fc0\cf0  CURRENT_VERSION 1.2\
\

\f4\b\fs24\fc2\cf2 #import
\f3\b0\fs20\fc0\cf0  "RTFExampleClass.h"\

\f4\b\fs24\fc2\cf2 #import
\f3\b0\fs20\fc0\cf0  <misckit/MiscString.h>\
\

\f4\b\fs24\fc2\cf2 @implementation
\f3\b0\fs20\fc0\cf0  RTFExampleClass\
\

\gray57\fc3\cf3 + initialize\

\gray0\fc0\cf0 \{\
	
\f4\b\fs24\fc2\cf2 if
\f3\b0\fs20\fc0\cf0  ( self == [RTFExampleClass class] )\
		[RTFExampleClass setVersion:CURRENT_VERSION];\
\
	
\f4\b\fs24\fc2\cf2 return
\f3\b0\fs20\fc0\cf0  self;\
\}\
\

\fc2\cf2 - init\

\fc0\cf0 \{\
	[super init];\
	
\f4\b\fs24\fc2\cf2 return
\f3\b0\fs20\fc0\cf0  [self initFromText:[MiscString newWithString:"- myMethod:sender"]];\
	\

\f2\fs24\gray300\fc4\cf4 	// BUG:	 Memory leak ! Who frees this string ?\
	//		initFromText does not !\

\f3\fs20\gray0\fc0\cf0 \}\
\

\fc2\cf2 - initFromText:theLine\

\fc0\cf0 \{\
	[super init];\
	name = [MiscString new];\
	[name takeStringValue:theLine];\
	[name replaceEveryOccurrenceOf:";" with:" "];\
	[name trimWhiteSpaces];\
\

\f2\fs24\gray333\fc5\cf5 	// Now charAt:0 _MUST_ be the method type !!\

\f3\fs20\gray0\fc0\cf0 	\
	selectorName = [name copy];\
	[selectorName replaceCharAt:0 withChar:' ']; \
	[selectorName trimWhiteSpaces];\
\
	return self;\
\}\
\
- free\
\{\
	[selectorName free];\
\

\f2\fs24\gray300\fc4\cf4 	// BUG: 	Really nasty guy...we don't really take care of all the \
	//		real bugs. We have forgoten about the name.\
	//		looks like there are more memory leaks too.\

\f3\fs20\gray0\fc0\cf0 \
	
\f4\b\fs24\fc2\cf2 return
\f3\b0\fs20\fc0\cf0  [super free];\
\}\
\
- (char *)name\
\{\
	
\f4\b\fs24\fc2\cf2 return
\f3\b0\fs20\fc0\cf0  [name stringValue];\
\}\
\
- (char *)selectorName\
\{\

\f2\fs24\gray333\fc5\cf5 	// Now here nothing really happens...right ?\
	// It would be nice if we had some me details on what with is all about....\
\

\f3\fs20\gray0\fc0\cf0 	
\f4\b\fs24\fc2\cf2 return
\f3\b0\fs20\fc0\cf0  [selectorName stringValue];\
\}\
\
- (BOOL)isInstanceMethod\
\{\
	
\f4\b\fs24\fc2\cf2 if
\f3\b0\fs20\fc0\cf0 ( [name charAt:0] == '+' ) 
\f4\b\fs24\fc2\cf2 return
\f3\b0\fs20\fc0\cf0  
\fc2\cf2 NO
\fc0\cf0 ;\
	
\f4\b\fs24\fc2\cf2 return
\f3\b0\fs20\fc0\cf0  YES;\
\}\
\
- (void *)doNothing:(int)right butWithSpeed:forTesting;\
\{\

\f2\fs24\gray333\fc5\cf5 	// stupid dummy !!!\

\f3\fs20\gray0\fc0\cf0 \}\

\f4\b\fs24\fc2\cf2 @end
\f3\b0\fs20\fc0\cf0 \
\
/*\
 * History: 13.01.95 Buh\
 *			\
 *\
 * 
\gray252\fc6\cf6 Bugs: - ...\

\gray0\fc0\cf0  */
}
